Skip to content

Conversation

@luislard
Copy link

@luislard luislard commented Jan 12, 2026

Please check if the PR fulfills these requirements

  • The commit message follows our guidelines
  • Tests for the changes have been added (for bug fixes/features)
  • Docs have been added/updated (for bug fixes/features)

Solves #28

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Refactor

What is the current behavior? (You can also link to an open issue here)

Currently the parallel manager is not really running in parallel for the installs at least.
There is no possiblity to run callbacks in important points.
There is no possibility to run a callback after a set of parallel tasks are finished.

What is the new behavior (if this is a feature change)?

Instead of running the processes in stages like: install, build, lock... we are now introducing the concept of ProcessGroups and Batches.
Each Assets will create a ProcessGroup, ProcessGroups can be worked in parallel and each Process group will have sequencial tasks.
We are also adding the possibity to pass callbacks When parent and children processes start.
We are reusing the existing max in parallel config to use it as max processes in parallel.
We are adding the possibility to pass a callback when each batch starts and finish.
We are adding the possibility to pass callbacks when a parent or child task errored.

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

In the current state yes.

There is a handleIsolatedCache method that was not ported in this change yet
The wipeNodemodules is handled a bit different we are not checking for symlink, we will need to see how this behaves.

We are going to test it in one of our projects.

Other information

Instead of running the processes in stages like: install, build, lock... we are now introducing the concept of ProcessGroups and Batches.
Each Assets will create a ProcessGroup, ProcessGroups can be worked in parallel and each Process group will have sequencial tasks.
We are also adding the possibity to pass callbacks When parent and children processes start.
We are reusing the existing max in parallel config to use it as max processes in parallel.
We are adding the possibility to pass a callback when each batch processed befor starting the new batch.
We are adding the possibility to pass callbacks when a parent or child task errored.
@luislard luislard force-pushed the 3.x-disk-space-usage-alternative branch from 3830703 to e692784 Compare January 19, 2026 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant